1 /*
2 * Scope: a generic MVC framework.
3 * Copyright (c) 2000-2002, The Scope team
4 * All rights reserved.
5 *
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
9 * are met:
10 *
11 * Redistributions of source code must retain the above copyright
12 * notice, this list of conditions and the following disclaimer.
13 *
14 * Redistributions in binary form must reproduce the above copyright
15 * notice, this list of conditions and the following disclaimer in the
16 * documentation and/or other materials provided with the distribution.
17 *
18 * Neither the name "Scope" nor the names of its contributors
19 * may be used to endorse or promote products derived from this software
20 * without specific prior written permission.
21 *
22 *
23 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
26 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
27 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
28 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
29 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
30 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
31 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
32 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
33 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34 *
35 *
36 * $Id: TimeStringConvertor.java,v 1.5 2002/09/05 15:41:47 ludovicc Exp $
37 */
38 package org.scopemvc.util.convertor;
39
40
41 import java.text.DateFormat;
42
43 /***
44 * String convertor for type {@link org.scopemvc.util.Time} or <code>java.util.Date</code>
45 * . Date part of <code>Date</code> instances are ignored. <p>
46 *
47 * It uses one <code>java.text.DateFormat DateFormat</code> for converting into
48 * <code>String</code> and an array of <code>DateFormat</code>s for parsing.
49 * Parsing formats are successively used to try to parse until one is
50 * successful. </p> <p>
51 *
52 * Formats are picked up from config (see {@link
53 * org.scopemvc.util.DefaultScopeConfig} for details) or if none in config, the
54 * default formatter is: <pre>
55 * DateFormat.getTimeInstance(DateFormat.MEDIUM)
56 * </pre> and default parsers are: <pre>
57 * DateFormat.getTimeInstance(DateFormat.FULL);
58 * DateFormat.getTimeInstance(DateFormat.LONG);
59 * DateFormat.getTimeInstance(DateFormat.MEDIUM);
60 * DateFormat.getTimeInstance(DateFormat.SHORT);
61 * </pre> <i>Note:</i> the default parsing set is initialized during class
62 * loading and based on default platform locale. If application uses other
63 * locales, there will be need to set parsing objects explicitly.
64 *
65 * @author <A HREF="mailto:danmi@users.sourceforge.net">Daniel Michalik</A>
66 * @author <A HREF="mailto:smeyfroi@users.sourceforge.net">Steve Meyfroidt</A>
67 * @created 05 September 2002
68 * @version $Revision: 1.5 $ $Date: 2002/09/05 15:41:47 $
69 * @see DateStringConvertor
70 * @see DateTimeStringConvertor
71 */
72 public class TimeStringConvertor extends DateStringConvertor {
73
74 // ------------- Defaults if no config specified ----------------
75 private final static DateFormat defaultParsers[] = new DateFormat[4];
76 static {
77 defaultParsers[3] = DateFormat.getTimeInstance(DateFormat.SHORT);
78 defaultParsers[2] = DateFormat.getTimeInstance(DateFormat.MEDIUM);
79 defaultParsers[1] = DateFormat.getTimeInstance(DateFormat.LONG);
80 defaultParsers[0] = DateFormat.getTimeInstance(DateFormat.FULL);
81 }
82
83 // ------------------------------------------------------------------
84
85 /***
86 * Creates new TimeStringConvertor. If formats and parsers are specified in
87 * config then use those else use current locale default format and platform
88 * locale default parsers.
89 */
90 public TimeStringConvertor() {
91 super();
92 }
93
94
95 /***
96 * Creates new TimeStringConvertor with specified formatter and parsers.
97 *
98 * @param inFormatter TODO: Describe the Parameter
99 * @param inParsers TODO: Describe the Parameter
100 */
101 public TimeStringConvertor(DateFormat inFormatter, DateFormat inParsers[]) {
102 super(inFormatter, inParsers);
103 }
104
105
106 /***
107 * Gets the default parsers
108 *
109 * @return The defaultParsers value
110 */
111 protected DateFormat[] getDefaultParsers() {
112 return TimeStringConvertor.defaultParsers;
113 }
114 }
This page was automatically generated by Maven